// Copyright 2010, Vanya Davidenko.
// Используемая кодировка: UTF-8.

#ifndef LIBV_TYPE2TAG_H_
#define LIBV_TYPE2TAG_H_


namespace libv
{

/** Класс, позволяющий однозначно преобразовывать имя типа в тег.
  * Тегом называется пустой класс, используемый при перегрузках функций для
  * выбора необходимой. Передача оригинального класса в качестве параметра
  * могла бы быть значительно более ресурсозатратной, чем передача его тега.
  * Является аналогом Loki::Type2Type,
  * перенесен в libv для уменьшения числа зависимостей.*/
template<class T>
struct Type2Tag
{
    typedef T Type;
};

}  // libv

#endif  // IBV_TYPE2TAG_H_
